The read/write heads of a hard disk are positioned by DC motors, typically a voice coil motor (VCM), that should be precisely driven for correctly sensing the arm or equivalent holder of the transducers to read data stored along a disk track. Voice coil motors are largely used, and for this reason the ensuing description is referred to these motors, but what will be stated holds even for other kinds of DC motors for positioning read/write heads onto a data storage disk.
Commonly, voice coil motors are current controlled by a feedback loop such as that of FIG. 1, often called a Current Minor Loop (CML). The attribute “Minor” means that the CML is an inner feedback loop for controlling the current absorbed by the motor. Conventionally, the main or outer feedback loop is the loop for actually controlling the position of the heads over the hard disk.
A sample main feedback loop is shown in FIG. 3. The position θ of the rotor of the motor VCM is compared with a desired position REFERENCE_POSITION, and a position error signal PES is generated. A controller of the position of the read/write heads HEADS POSITION CONTROLLER is input with the signal PES, and generates a signal U input to the voltage mode controller FILTER. Preferably, parameters of the voltage mode controller FILTER are updated as a function of estimated values of parameters of the motor VCM.
In the Current Minor Loop, the current absorbed by the motor is commonly monitored by a sensing resistor in series to at least one winding of the motor. The main drawback of this approach is that the value of the sensing resistors should be precisely determined for minimizing errors, and thus they are quite expensive. The voltage drop on the nodes of a sensing resistor should be provided to an integrated control circuit through dedicated pins. Because of the ever increasing integration level of electronic circuits, a larger number of pins implies larger packaging costs. Moreover, forming feedback loops for controlling in a current mode a motor is a non-negligible cost, especially for large scale productions.
To prevent using dedicated pins for a current sensing signal, a feedback loop and a corresponding controller and an open-loop voltage mode control, such as that depicted in FIG. 2, may be used. The external command U is provided to the controller which generates a respective control voltage of the power amplifier. The parameters of the controller are determined as a function of the parameters of the DC motor.
The admittance of the motor varies during the functioning because the motor heats, and thus its resistance R increases with temperature. As a consequence, the filter that generates the control voltage of the power amplifier may be not sufficiently accurate when the motor resistance differs from its nominal value.
Of course, it is possible to modify parameters that define the filter for adjusting them to resistance variations of the motor, but this can be done only after having determined the effective resistance R of the motor. This should be performed without sensing the current circulating in the motor for having the above mentioned advantages of the open-loop voltage mode control.
This need is particularly felt when driving voice-coil motors for positioning read/write heads of a hard disk. During the so-called “seek” operations, a temperature of the VCM increases and its resistance also increases. If a track has to be read immediately after a seek operation, the command signal provided to the motor may be unsuitable for positioning the read/write head on the desired track because the motor resistance has increased. The same problem is present when the motor cools down, and thus its resistance decreases.
To estimate the VCM resistance, several techniques can be used. Reference is directed to the following two references: Oboe et al., Realization Of A Hard Disk Drive Head Servo-Positioning System With A Voltage-Driven Voice-Coil Motor, Microsystem Technologies, Vol. 9, No. 4, 2003, pp. 271–281; and Oboe et al., Realization Of An Adaptive Voltage Driver For Voice Coil Motor, ISPS-MIPE Joint Conference, June 2003, Yokohama, Japan. In these refereces, an approach based on an EKF (Extended Kalman Filter) has been presented and applied to the on-line adaptation of the digital pre-filter in a voltage control mode.
This approach was quite effective and capable of tracking even stepwise variations of the VCM resistance. Convergence of the algorithm was ensured during seek operations, while the precision of the identification decreased when the seek span was reduced under a few tens of tracks. This was caused by the reduction of the signal-to-noise ratio that occurs when the head makes small movements. Indeed, in such conditions the command level becomes negligible as compared to the level of the noise due to RRO (Repetitive Run Out) and NRRO (Non-Repetitive Run Out) disturbances. The EKF noise model is no longer valid.
Another drawback of the EKF-based adaptation in actual HDDs is the high computational cost involved by this adaptation. Even if particular care has been devoted to the model order reduction and to the fixed-point optimized implementation, the EKF-based adaptation still required a fully dedicated DSP to the real-time computation, thus making the use of the voltage driver undesirable from an overall cost point of view.